package com.newly.center.business.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.newly.common.base.entity.business.Po.StatisticsDay;
import com.newly.common.base.entity.business.Vo.*;

import java.util.List;

/**
 * @anthor sbq
 * @date 2021/11/4 9:46
 */
public interface StatisticsDayService extends IService<StatisticsDay> {

    /**
     * 统计最近X天每天的检测次数、正常次数、超重次数
     * @param offset 偏移天数，正数向未来偏移，负数向历史偏移
     * @return
     */
    List<LastXDayTrendVo> lastXDayTrend(Integer offset);

    /**
     * 统计最近X天每天的超重次数
     * @param offset 偏移天数，正数向未来偏移，负数向历史偏移
     * @return
     */
    List<LastXDayOverweightVo> lastXDayOverweight(Integer offset);

    /**
     * 统计最近X天每个站点的检测次数、检测超重次数、超重百分比
     * @param offset 偏移天数，正数向未来偏移，负数向历史偏移
     * @return
     */
    List<LastXDayRankingVo> lastXDayRanking(Integer offset);

    /**
     * 按轴数统计超重次数、平均超重率
     * @return
     */
    List<AxleCountVo> getAxleRanking(List<StatisticsDay> statisticsDayList);

    /**
     * 数据大屏-- 地图 --统计所有站点今日检测次数、超重次数、超重百分比以及每个站点的检测次数和超重次数
     * @return
     */
    MapVo map();

}
